package css.sword.annotation.kafka;

import java.util.Map;


/**
 * @project 深圳OA
 * @package zhbg.oaxt.redis.dao
 * @file RedisBaseDao.java 创建时间:2018年7月23日下午3:51:07
 * @title 标题（要求能简洁地表达出类的功能和职责）
 * @description 描述（简要描述类的职责、实现方式、使用注意事项等）
 * @copyright Copyright (c) 2018 中国软件与技术服务股份有限公司
 * @company 中国软件与技术服务股份有限公司
 * @module 模块: 模块名称
 * @author   史雪涛
 * @reviewer 审核人
 * @version 1.0
 * @history 修订历史（历次修订内容、修订人、修订时间等）
 *
 */
public class OAKafkaBaseDao {

    /**
     * redisCache
     */
    private OAKafkaAbs cache;

    /**
     * RedisCommands
     */
    private OAKafkaCommands commands;

    /**
     *@constructor 构造方法
     */
    public OAKafkaBaseDao() {
        try {
            cache = initCache();
            commands = cache.getCommands();
        } catch (Exception e) {
            System.err.println(e);
            throw new RuntimeException(e.getMessage(), e);
        }
    }

    /**
     * initCache
     * @return RedisCache
     */
    public OAKafkaAbs initCache() throws Exception {
        return OAKafkaImpl.getInstance();
    }

    /**
     *@name    中文名称
     *@description 相关说明
     *@time    创建时间:2018年7月23日下午3:52:02
     *@param topics  参数
     *@param map 传入参数2
     *@author   史雪涛
     *@history 修订历史（历次修订内容、修订人、修订时间等）
     */
    public void sendkafka(String topics, Map<String, Object> map) throws Exception {
        commands.sendkafka(topics, map);
    }

}